热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaFX|复选框

JavaFX|复选框原文:https://www.geeksf

JavaFX |复选框

原文:https://www.geeksforgeeks.org/javafx-checkbox/

CheckBox 是 JavaFX 包的一部分。CheckBox 是一个选中时带有勾号的框,未选中时为空。起初,复选框可能看起来类似于单选按钮,但它们之间存在区别,即复选框不能组合成切换组,这意味着我们不能同时选择多个选项。

复选框的状态:


  • 已检查:不确定时为假,检查时为真 未选中:当不确定为假,选中为假 Undefined: When indeterminate is true

    类的构造函数有:


    1. 复选框():创建标签为空字符串的复选框。

    2. 复选框(字符串 t) :用给定的文本作为标签创建一个复选框。

    常用方法:






























    方法说明
    Isincrement()获取不确定属性的值。
    isSelected()获取选定属性的值。
    所选属性()指示是否选中此复选框。
    【setendiante(boolean v)设置不确定属性的值。
    设置选定(布尔 v)设置选定属性的值。

    以下程序说明了 CheckBox 在 JavaFX 包中的使用:


    1. Program to create checkbox and add it to stage: This program creates a multiple CheckBox indicated by the name c. The CheckBox will be created inside a scene, which in turn will be hosted inside a stage. The indeterminate state of the checkbox would be initially set to true using the setIndeterminate() function. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the CheckBox and the label inside the scene. Finally the show() method is called to display the final results.

      ```java
      import javafx.application.Application;
      import javafx.scene.Scene;
      import javafx.scene.control.;
      import javafx.scene.layout.
      ;
      import javafx.event.ActionEvent;
      import javafx.event.EventHandler;
      import javafx.collections.*;
      import javafx.stage.Stage;
      public class Checkbox_1 extends Application {

      // launch the application
          public void start(Stage s)
          {
              // set title for the stage
              s.setTitle("creating CheckBox");

      // create a tile pane
              TilePane r = new TilePane();

      // create a label
              Label l = new Label("This is a check box");

      // string array
              String st[] = { "Arnab", "Andrew", "Ankit" };

      // add label
              r.getChildren().add(l);

      for (int i = 0; i

      // create a checkbox
                  CheckBox c = new CheckBox(st[i]);

      // add label
                  r.getChildren().add(c);

      // set IndeterMinate
                  c.setIndeterminate(true);
              }

      // create a scene
              Scene sc = new Scene(r, 150, 200);

      // set the scene
              s.setScene(sc);

      s.show();
          }

      public static void main(String args[])
          {
              // launch the application
              launch(args);
          }
      }
      ```

      输出 :


    2. Java Program to create check box and add event handler to it: This program creates a multiple CheckBox indicated by the name c. An Event handler will be created to handle the events ( toggle the label associated with textbox to depict the state of checkbox). The event would be set to the checkbox using setOnAction() function. The CheckBox will be created inside a scene, which in turn will be hosted inside a stage. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the CheckBox and the label inside the scene. Finally, the show() method is called to display the final results.

      ```java
      import javafx.application.Application;
      import javafx.scene.Scene;
      import javafx.scene.control.;
      import javafx.scene.layout.
      ;
      import javafx.event.ActionEvent;
      import javafx.event.EventHandler;
      import javafx.collections.*;
      import javafx.stage.Stage;
      public class Checkbox_2 extends Application {

      // launch the application
          public void start(Stage s)
          {
              // set title for the stage
              s.setTitle("creating CheckBox");

      // create a tile pane
              TilePane r = new TilePane();

      // create a label
              Label l = new Label("This is a check box");

      // string array
              String st[] = { "Arnab", "Andrew", "Ankit" };

      // add label
              r.getChildren().add(l);

      for (int i = 0; i

      // create a checkbox
                  CheckBox c = new CheckBox(st[i]);

      // add checkbox
                  r.getChildren().add(c);

      Label l1 = new Label(st[i] + " not selected");

      // create a string
                  String s1 = st[i];

      // create a event handler
                  EventHandler event = new EventHandler() {

      public void handle(ActionEvent e)
                      {
                          if (c.isSelected())
                              l1.setText(s1 + " selected ");
                          else
                              l1.setText(s1 + " not selected ");
                      }

      };

      // set event to checkbox
                  c.setOnAction(event);

      // add label
                  r.getChildren().add(l1);
              }

      // create a scene
              Scene sc = new Scene(r, 150, 200);

      // set the scene
              s.setScene(sc);

      s.show();
          }

      public static void main(String args[])
          {
              // launch the application
              launch(args);
          }
      }
      ```

      输出 :




参考:https://docs . Oracle . com/javase/8/JavaFX/API/JavaFX/scene/control/checkbox . html


推荐阅读
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 在处理 XML 数据时,如果需要解析 `` 标签的内容,可以采用 Pull 解析方法。Pull 解析是一种高效的 XML 解析方式,适用于流式数据处理。具体实现中,可以通过 Java 的 `XmlPullParser` 或其他类似的库来逐步读取和解析 XML 文档中的 `` 元素。这样不仅能够提高解析效率,还能减少内存占用。本文将详细介绍如何使用 Pull 解析方法来提取 `` 标签的内容,并提供一个示例代码,帮助开发者快速解决问题。 ... [详细]
  • 本文深入探讨了Java多线程环境下的同步机制及其应用,重点介绍了`synchronized`关键字的使用方法和原理。`synchronized`关键字主要用于确保多个线程在访问共享资源时的互斥性和原子性。通过具体示例,如在一个类中使用`synchronized`修饰方法,展示了如何实现线程安全的代码块。此外,文章还讨论了`ReentrantLock`等其他同步工具的优缺点,并提供了实际应用场景中的最佳实践。 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • 在Android开发中,实现多点触控功能需要使用`OnTouchListener`监听器来捕获触摸事件,并在`onTouch`方法中进行详细的事件处理。为了优化多点触控的交互体验,开发者可以通过识别不同的触摸手势(如缩放、旋转等)并进行相应的逻辑处理。此外,还可以结合`MotionEvent`类提供的方法,如`getPointerCount()`和`getPointerId()`,来精确控制每个触点的行为,从而提升用户操作的流畅性和响应性。 ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • 卓盟科技:动态资源加载技术的兼容性优化与升级 | Android 开发者案例分享
    随着游戏内容日益复杂,资源加载过程已不仅仅是简单的进度显示,而是连接玩家与开发者的桥梁。玩家对快速加载的需求越来越高,这意味着开发者需要不断优化和提升动态资源加载技术的兼容性和性能。卓盟科技通过一系列的技术创新,不仅提高了加载速度,还确保了不同设备和系统的兼容性,为用户提供更加流畅的游戏体验。 ... [详细]
  • 本文探讨了在任务完成后将其转换为最终状态时的异常处理机制。通过分析 `TaskCompletionSource` 的使用场景,详细阐述了其在异步编程中的重要作用,并提供了具体的实现方法和注意事项,帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 深入解析 Android 中 EditText 的 getLayoutParams 方法及其代码应用实例 ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • 设计实战 | 10个Kotlin项目深度解析:首页模块开发详解
    设计实战 | 10个Kotlin项目深度解析:首页模块开发详解 ... [详细]
author-avatar
壮壮由之妈_245
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有